package com.anti.modular.bus.billotherrevenues.entity;

import com.anti.commom.support.model.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import java.math.BigDecimal;
import java.util.Date;

import cn.afterturn.easypoi.excel.annotation.Excel;


/**
 * 其他收支
 *
 * @author anti
 * @date 2021-06-03 09:34:42
 */
@EqualsAndHashCode(callSuper = true)
@Data
@Entity
@Table(name="bill_other_revenues")
public class BillOtherRevenues extends BaseEntity {

    /**
     * 主键id
     */
    @Id
    private Long id;

    /**
     * 房間主键
     */
    private Long roomId;

    //关联房间类型 1 不关联到房产 2 整栋 3 房
    private Integer glRoomType;
    /**
     * 
     */
    private String roomName;

    /**
     * 姓名
     */
    private String name;

    /**
     * 類目ID
     */
    private Integer revenuesType;

    private String revenuesTypeName;

    /**
     * 收支類型 1 收入 2 支出 3 應收帳 4 應付帳
     */
    private Integer type;

    /**
     * 金额
     */
    private BigDecimal amount;

    /**
     * 流入流出類型 （1 流入 2 流出）
     */
    private Integer billInOutType;

    /**
     * 應收日期
     */
    @Excel(name = "應收日期", databaseFormat = "yyyy-MM-dd HH:mm:ss", format = "yyyy-MM-dd", width = 20)
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    private Date shouldReceiveDate;

    /**
     * 实收日期
     */
    @Excel(name = "实收日期", databaseFormat = "yyyy-MM-dd HH:mm:ss", format = "yyyy-MM-dd", width = 20)
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    private Date receiveDate;

    /**
     * 收款方式
     */
    private Integer collectionType;

    /**
     * 收租提醒开关（1 开启 0关闭）
     */
    private Integer rentReminderSwitch;

    /**
     * 收租提醒提前 天
     */
    private Integer rentReminderDay;

    /**
     * 收租提醒提前 小时
     */
    private Integer rentReminderHour;

    /**
     * 收租提醒提前 分钟
     */
    private Integer rentReminderMinutes;

    /**
     * 收支狀態 0 未到賬  1 到賬
     */
    private Integer revenuesStatus;

    /**
     * 到賬操作人ID
     */
    private Long auditId;

    /**
     * 到賬操作人
     */
    private String auditName;

    /**
     * 到賬操作时间
     */
    @Excel(name = "到賬操作时间", databaseFormat = "yyyy-MM-dd HH:mm:ss", format = "yyyy-MM-dd", width = 20)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date auditTime;

    /**
     * 備注
     */
    private String remark;

    /**
     * 訂單單號
     */
    private String no;

    /**
     * 状态（字典 0正常 1注銷 2刪除）
     */
    private Integer status;

    /**
     * 经办人
     */
    private String manager;

}
